package edu.scau.mis.core.oss.storage;

import java.io.InputStream;
import java.util.List;

public interface IStorage {
    void putObject(String bucketName, String objectName, InputStream inputStream, String contentType);

    InputStream getObject(String bucketName, String objectName);

    void removeObject(String bucketName, String objectName) throws Exception;

    String getPublicObjectUrl(String bucketName, String objectName) throws Exception;

    String getSignedObjectUrl(String bucketName, String objectName) throws Exception;

    List<String> listAllObjectNames(String bucketName) throws Exception;
}
